Applications in the field of signal processing and/or data processing necessitate decimation of a digitized signal. Decimation means a reduction of the bandwidth of a digitized signal with simultaneous reduction of the sampling rate of the digitized signal.
Decimation can be obtained, for example, by means of a polyphase filter. A polyphase filter represents a common method for decimation with variable sampling rate purely in the time domain. Here, the impulse response of the decimation filter is stored in a heavily oversampled manner, for example with a factor of n=1024. Depending on the output clock, the shifting chain of the used FIR filter (FIR=Finite Impulse Response) is shifted by n steps. At the same time, the input data are stored in the shifting chain with the distance m corresponding to the desired decimation rate and weighted with the respective coefficient of the FIR filter. Normally, m is not an integer number and the matching coefficient is selected by means of “nearest neighbor”.
Alternatively, linear interpolation is performed between two coefficients. However, the method does have disadvantages. At high relative bandwidths, respective long filters become necessitated which disproportionally increase the computing time requirements. Without linear interpolation between coefficients, the factor n has to be selected to be large, for example in the range of 10000 in order to obtain good signal quality. This results in high storage requirements. However, if linear interpolation is used, a lower number of coefficients can be used. In turn, the calculations become more complex. Further, the complex structure of the memory of the filter complicates parallel/distributed processing of the data in several processor cores.
A so-called Farrow interpolator represents a combination of a short FIR filter and a polynomial interpolation. Disadvantages are a bad SFDR (spurious free dynamic range) in the range of approximately 50 dB as well as the necessity of having to limit the bandwidth of the signal prior to the actual interpolator. This results in additional computing effort. Thus, for applications in measurement technology and radio detection, the Farrow interpolator is usually not applicable.
A pure polynomial interpolation of the input data for determining the output data at the necessitated times has the same disadvantages as the Farrow interpolator and is hence also not applicable.
Decimation in the frequency domain by means of fast convolution can be performed in the frequency domain when different lengths for a fast Fourier transformation (FFT) with a transformation length N1−FFT(N1) and an inverse FFT with the transformation length N2−IFFT(N2) with N1>N2 are used on the input and output side and the filter characteristic has been selected such that after applying the window a maximum of N2 frequency bins (frequency bin=frequency line of the spectrum) have to be considered. The sampling rate at the input relates to the sampling rate at the output like N1/N2. A disadvantage of the this method is that N1 and N2 have to be at least integer for enabling realization by discrete Fourier transformation (DFT), which is very inefficient and not practical. A further disadvantage is that usually only for powers of two of N1 and N2 relevant implementations are available for microprocessors, such as for a Cooley-Tukey Transformation. Prime factor FFTs are also significantly less efficient, only available for specific ratios between N1/N2 and normally not included in program libraries.
Thus, there is a need for efficient and flexible algorithms for decimation of sampling rates.